package com.mt.fpb.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.stereotype.Component;

import java.util.Date;

/**
 * FileName: InsurancePolicy
 * Author:   wang
 * Date:     2021/7/24 11:04
 */
@Api("保单信息")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InsurancePolicy {
    /**
     * 保单号主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    //@TableId()
   // @Excel(name = "保单号(主键)")
    private String insuranceId;

    /**
     * 基本信息_保单号(用户上传的保单号)
     */

   // @Excel(name = "基本信息_保单号")
    private String insuranceIdBase;

//    /**
//     * 用户标识id
//     */
//    //@Excel(name = "用户标识id")
//    private String userId;

    /**
     * 基本信息_承保时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    //@Excel(name = "基本信息_承保时间", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    private Date acceptTimeBase;

    /**
     * 基本信息_保单生效时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
   // @Excel(name = "基本信息_保单生效时间", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    private Date startTime;

    /**
     * 保单失效时间
     */
//    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    //@Excel(name = "保单失效时间", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
//    private Date endTime;

    /**
     * 基本信息_保单状态
     */
   // @Excel(name = "基本信息_保单状态")
    private int state;

    /**
     * 投保信息_投保公司
     */
   // @Excel(name = "投保信息_投保公司")
    private String insuranceCompany;

//    /**
//     * 意外身故保额
//
//     */
//    //@Excel(name = "意外身故保额")
//    private Integer accDeathCoverage;
//
//    /**
//     * 门诊保额
//     */
//  //  @Excel(name = "门诊保额")
//    private Integer outpatientCoverage;
//
//    /**
//     * 住院保额
//     */
//   // @Excel(name = "住院保额")
//    private Integer hosCoverage;
//
//    /**
//     * 每日住院津贴
//     */
//   // @Excel(name = "每日住院津贴")
//    private Integer hosAllowance;
//
//    /**
//     * 受保人身份证号
//     */
//   // @Excel(name = "受保人身份证号")
//    private String cardId;
//
//    /**
//     * 受保人真实姓名
//     */
//   // @Excel(name = "受保人真实姓名")
//    private String userName;

    /**
     * 投保信息_保障期限
     */
   // @Excel(name = "投保信息_保障期限")
    private String guaranteePeriodInsure;

    /**
     * 投保信息_缴费期限
     */
   // @Excel(name = "投保信息_缴费期限")
    private String deliveryTermInsure;

    /**
     * 年交保费
     */
   // @Excel(name = "年交保费")
    private String insuranceCostYear;

//    /**
//     * 投保人姓名
//     */
//    //@Excel(name = "投保人姓名")
//    private String policyHolderName;

    /**
     * 基本信息_业务员
     */
    //@Excel(name = "基本信息_业务员")
    private String salesmanBase;

    /**
     * 基本信息_业务员手机号
     */
   // @Excel(name = "基本信息_业务员手机号")
    private String salesmanPhoneBase;

    /**
     * 基本信息_所属机构
     */
    //@Excel(name = "基本信息_所属机构")
    private String organizationBase;

    /**
     * 基本信息_保费金额
     */
   // @Excel(name = "基本信息_保费金额")
    private Float premiumBase;

    /**
     * 投保信息_产品名称
     */
   // @Excel(name = "投保信息_产品名称")
    private String productNameInsure;

    /**
     * 投保信息_缴费频次
     */
    //@Excel(name = "投保信息_缴费频次")
    private String paymentFrequencyInsure;

    /**
     * 投保人信息_姓名
     */
    //@Excel(name = "投保人信息_姓名")
    private String namePolicyholder;

    /**
     * 投保人信息_手机号
     */
    //@Excel(name = "投保人信息_手机号")
    private String phonePolicyholder;

    /**
     * 投保人信息_证件类型
     */
   // @Excel(name = "投保人信息_证件类型")
    private String certificateTypePolicyholder;

    /**
     * 投保人信息_证件号码
     */
    //@Excel(name = "投保人信息_证件号码")
    private String certificateNumberPolicyholder;

    /**
     * 投保人信息_证件有效期
     */
   // @Excel(name = "投保人信息_证件有效期")
    private Integer certificateValidityPolicyholder;

    /**
     * 投保人信息_居住地址
     */
   // @Excel(name = "投保人信息_居住地址")
    private String residentialAddressPolicyholder;

    /**
     * 投保人信息_出生日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    //@Excel(name = "投保人信息_出生日期", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    private Date dateBirthPolicyholder;

    /**
     * 投保人信息_性别
     */
    //@Excel(name = "投保人信息_性别")
    private String sexPolicyholder;

    /**
     * 投保人信息_邮箱
     */
   // @Excel(name = "投保人信息_邮箱")
    private String emailPolicyholder;

    /**
     * 投保人信息_职业类别
     */
   // @Excel(name = "投保人信息_职业类别")
    private String occupationPolicyholder;

    /**
     * 被保人信息_姓名
     */
    //@Excel(name = "被保人信息_姓名")
    private String nameRecognizee;

    /**
     * 被保人信息_手机号
     */
   // @Excel(name = "基本信息_保单号")
    private String phoneRecognizee;

    /**
     * 被保人信息_证件类型
     */
    //@Excel(name = "被保人信息_证件类型")
    private String certificateTypeRecognizee;

    /**
     * 被保人信息_证件号码
     */
   // @Excel(name = "被保人信息_证件号码")
    private String certificateNumberRecognizee;

    /**
     * 被保人信息_证件有效期
     */
    //@Excel(name = "被保人信息_证件有效期")
    private Integer certificateValidityRecognizee;

    /**
     * 被保人信息_居住地址
     */
    //@Excel(name = "被保人信息_居住地址")
    private String residentialAddressRecognizee;

    /**
     * 被保人信息_出生日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  //  @Excel(name = "被保人信息_出生日期", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    private Date dateBirthRecognizee;

    /**
     * 被保人信息_性别
     */
   // @Excel(name = "被保人信息_性别")
    private String sexRecognizee;

    /**
     * 被保人信息_邮箱
     */
    //@Excel(name = "被保人信息_邮箱")
    private String emailRecognizee;

    /**
     * 被保人信息_职业类别
     */
   // @Excel(name = "被保人信息_职业类别")
    private String occupationRecognizee;

    /**
     * 被保人信息_与被保人关系
     */
    //@Excel(name = "被保人信息_与被保人关系")
    private String relationshipRecognizee;

    /**
     * 受益人信息_受益人
     */
   // @Excel(name = "受益人信息_受益人")
    private String beneficiaryBeneficiary;

    /**
     * 受益人信息_姓名
     */
    //@Excel(name = "受益人信息_姓名")
    private String nameBeneficiary;

    /**
     * 受益人信息_手机号
     */
   // @Excel(name = "受益人信息_手机号")
    private String phoneBeneficiary;

    /**
     * 受益人信息_证件类型
     */
    //@Excel(name = "受益人信息_证件类型")
    private String certificateTypeBeneficiary;

    /**
     * 受益人信息_证件号码
     */
    //@Excel(name = "受益人信息_证件号码")
    private String certificateNumberBeneficiary;

    /**
     * 受益人信息_证件有效期
     */
    //@Excel(name = "受益人信息_证件有效期")
    private Integer certificateValidityBeneficiary;

    /**
     * 受益人信息_与被保人关系
     */
   // @Excel(name = "受益人信息_与被保人关系")
    private String relationshipBeneficiary;

    /**
     * 受益人信息_出生日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
   // @Excel(name = "受益人信息_出生日期", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    private Date dateBirthBeneficiary;

    /**
     * 受益人信息_性别
     */
   // @Excel(name = "受益人信息_性别")
    private String sexBeneficiary;

    /**
     * 受益人信息_受益比例
     */
    //@Excel(name = "受益人信息_受益比例")
    private Float benefitRatioBeneficiary;

    /**
     * 账户信息_持卡人姓名
     */
    //@Excel(name = "账户信息_持卡人姓名")
    private String cardholderNameAccount;

    /**
     * 账户信息_开户银行
     */
   // @Excel(name = "账户信息_开户银行")
    private String depositBankAccount;

    /**
     * 账户信息_银行卡号
     */
    //@Excel(name = "账户信息_银行卡号")
    private String cardNumberAccount;

}
